草庐IT

Android JsonArray 和 JsonObject 反序列化

全部标签

c# - 反序列化包含与关键字冲突的属性的 JSON 响应

有一个我无法控制的API,但我需要使用C#使用其输出,最好使用JSON.Net。这是一个示例响应:[{"media_id":36867,"explicit":0}]我本来打算上这样的课:classMedia{publicintmedia_id;publicintexplicit;}反序列化:varl=JsonConvert.DeserializeObject>(s);不幸的是,“explicit”是C#关键字,因此无法编译。我的下一个猜测是修改类:classMedia{publicintmedia_id;publicintexplicit_;}...并以某种方式将响应属性映射到C#属性

c# - 如何序列化到现有文件?

假设我有一个包含BinaryFomatter序列化对象的文件。现在我希望能够序列化另一个对象并将其附加到现有文件上。我该怎么做? 最佳答案 这确实是可能的。下面的代码附加对象。using(varfileStream=newFileStream("C:\file.dat",FileMode.Append)){varbFormatter=newBinaryFormatter();bFormatter.Serialize(fileStream,objectToSerialize);}以下代码反序列化对象。varlist=newList()

c# - 序列化 .NET 字典

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:SerializeClasscontainingDictionarymember我可以序列化字典吗?

c# - 我可以序列化数据表或数据集以通过 C# 中的 Web 服务传输吗?

我正在使用网络服务从表中查询数据。然后我必须将它发送给需要它作为DataTable的用户。我可以序列化数据吗?或者我应该将它作为数据集发送。我是Web服务的新手,所以我不确定最好的方法。 最佳答案 您可以通过DataSet.GetXml()从数据集中将数据作为xml字符串发送然后用户可以使用DataSet.ReadXml()反序列化它并通过DataSet.Tables从数据集中获取数据表祝你好运 关于c#-我可以序列化数据表或数据集以通过C#中的Web服务传输吗?,我们在StackOve

c# - 使用 WebClient 进行 JSON 序列化?

我知道您可以使用WebClient.DownloadString()从HttpWebResponse反序列化一个JSON对象,但是反过来呢?我查看了MSDN页面,我不知道您是否可以序列化为JSON对象,有人知道吗? 最佳答案 我认为您可能只需要在使用WebClient实例之前将对象序列化为JSON。希望这有帮助varurl="...";varjson=JsonHelper.ToJson(myObject);varresponse=PostJson(url,json);这是从WebClient类发送JSON数据的示例:publicst

c# - 实体到 json 错误 - 序列化类型对象时检测到循环引用

尝试将实体对象转换为JSON字符串时出现以下错误。我将C#MVC4与代码优先数据库设计一起使用。它接缝是因为FK和表之间的关系造成了这个问题。解决方法是什么?在序列化System.Data.Entity.DynamicProxies.User类型的对象时检测到循环引用我的代码是Userma=db.user.First(x=>x.u_id==id);returnJson(ma,JsonRequestBehavior.AllowGet); 最佳答案 这是因为它正在尝试加载子对象,并且可能会创建一些永无止境的循环(a=>b,b=>c,c=

c# - Json和Xml序列化,哪个性能更好?

我必须在文件中存储一些配置信息。在C#代码中,配置数据按类表示,在文件中,我将以json或xml格式保存此类。那么,序列化json或xml性能最佳的是什么? 最佳答案 好吧,我有答案,而不是猜测。这是测试程序:classProgram{staticvoidMain(string[]args){stringxmlConfig="";stringjsonConfig="";ConfigmyConfig=newConfig(){value="MyStringValue",DateStamp=DateTime.Today,counter=4

c# - 在 .NET 中反序列化 RSS 提要

使用序列化从RSS提要中读取数据是否可行/可行?我基本上想从我的Netflix队列中提取信息(由RSS提要提供),并且我正在尝试确定序列化是否可行/可能,或者我是否应该只使用类似XMLReader的东西。另外,从URL下载提要的最佳方式是什么?除了驱动器,我从来没有从任何地方提取过文件,所以我不确定该怎么做。 最佳答案 如果您可以使用LINQ,那么LINQtoXML是了解RSS提要文档基础知识的一种简单方法。这是来自somethingIwrote从我博客的RSS提要中选择匿名类型的集合,例如:protectedvoidPage_Lo

c# - 以编程方式设置属性以从序列化中排除

是否可以通过编程方式设置您想要从序列化中排除某个属性?例子:反序列化时,我想加载一个ID字段序列化时,我不想输出ID字段 最佳答案 我相信这里有三个选项:使用XmlIgnore属性。缺点是您需要提前知道您希望xmlserializer忽略哪些属性。实现IXmlSerializable界面。这使您可以完全控制XML的输出,但您需要自己实现读/写方法。实现ICustomTypeDescriptor界面。我相信无论您选择哪种类型的序列化,这都会使您的解决方案正常工作,但它可能是所有解决方案中最长的。

c# - C# 中的序列化和对象版本控制

如果我想序列化一个对象,我必须使用[Serializable]属性,所有成员变量都将写入文件。我不知道如何进行版本控制,例如如果我添加一个新的成员变量(重命名一个变量或只是删除一个变量)然后我打开(反序列化)文件我如何确定对象/文件版本以便我可以正确设置新成员或进行某种迁移?我如何确定变量是否在加载期间被初始化(被解串器忽略)。我知道有版本容错方法,我可以用[OptionalField(VersionAdded=1)]属性标记变量。如果我打开一个旧文件,框架将忽略这个可选的(新变量)并且它只是零/空。但是我又如何确定变量是通过加载初始化还是被忽略了。我可以将类/对象版本号写入流。使用I